翻訳と辞書
Words near each other
・ Assensbanen
・ Assent
・ Assent (military)
・ Assent of faith
・ Assento
・ Assemblies of God of Egypt
・ Assemblies of God Statement of Fundamental Truths
・ Assemblies of God Theological Seminary
・ Assemblies of God USA
・ Assemblies of the Autonomous Islands of the Comoros
・ Assemblies of the Lord Jesus Christ
・ Assemblies of Yahweh
・ Assemblin
・ Assembly
・ Assembly (bugle call)
Assembly (CLI)
・ Assembly (demo party)
・ Assembly (film)
・ Assembly (John Foxx album)
・ Assembly (MBTA station)
・ Assembly (programming)
・ Assembly (Theatre of Tragedy album)
・ Assembly (TV series)
・ Assembly Affairs Museum, The Legislative Yuan
・ Assembly Commission
・ Assembly election results of Chhattisgarh
・ Assembly election results of Himachal Pradesh
・ Assembly election results of Mizoram
・ Assembly for the Sovereignty of the Peoples
・ Assembly hall


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Assembly (CLI) : ウィキペディア英語版
Assembly (CLI)

Defined by Microsoft for use in recent versions of Windows, an assembly in the Common Language Infrastructure (CLI) is a compiled code library used for deployment, versioning, and security. There are two types: process assemblies (EXE) and library assemblies (DLL). A process assembly represents a process that will use classes defined in library assemblies. CLI assemblies contain code in CIL, which is usually generated from a CLI language, and then compiled into machine language at run time by the just-in-time compiler. In the .NET Framework implementation, this compiler is part of the Common Language Runtime (CLR).
An assembly can consist of one or more files. Code files are called modules. An assembly can contain more than one code module. And since it is possible to use different languages to create code modules, it is technically possible to use several different languages to create an assembly. Visual Studio however does not support using different languages in one assembly.
==Assembly names==
The name of an assembly consists of four parts
# The short name. On Windows this is the name of the Portable Executable (PE) file without the extension.
# The culture. This is an RFC 1766 identifier of the locale for the assembly. In general, library and process assemblies should be culture neutral; the culture should only be used for satellite assemblies.
# The version. This is a dotted number made up of four values — major, minor, build and revision.
# A public key token. This is a 64-bit hash of the public key that corresponds to the private key used to sign〔(Giving a .NET Assembly a Strong Name )〕 the assembly. A signed assembly is said to have a strong name.
The public key token is used to make the assembly name unique. Thus, two strong named assemblies can have the same PE file name and yet the CLI will recognize them as different assemblies. The Windows file system (FAT32 and NTFS) only recognizes the PE file name, so two assemblies with the same PE file name (but different culture, version or public key token) cannot exist in the same Windows folder. To solve this issue the CLI introduces the GAC (Global Assembly Cache) that is treated as a single folder by run-time, but is actually implemented using nested file system folders.
To prevent spoofing attacks, where a cracker would try to pass off an assembly appearing as something else, the assembly is signed with a private key. The developer of the intended assembly keeps the private key secret, so a cracker cannot have access to it nor simply guess it. Thus the cracker cannot make his assembly impersonate something else, lacking the possibility to sign it correctly after the change. Signing the assembly involves taking a hash of important parts of the assembly and then encrypting the hash with the private key. The signed hash is stored in the assembly along with the public key. The public key will decrypt the signed hash. When the CLR loads a strongly named assembly it will generate a hash from the assembly and then compare this with the decrypted hash. If the comparison succeeds then it means that the public key in the file (and hence the public key token) is associated with the private key used to sign the assembly. This will mean that the public key in the assembly is the public key of the assembly publisher and hence a spoofing attack is prevented.

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Assembly (CLI)」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.